403Webshell
Server IP : 121.121.20.254  /  Your IP : 216.73.216.202
Web Server : Microsoft-IIS/10.0
System : Windows NT WEB-SERVER 10.0 build 20348 (Windows Server 2022) AMD64
User : IUSR ( 0)
PHP Version : 8.3.28
Disable Function : NONE
MySQL : ON  |  cURL : ON  |  WGET : OFF  |  Perl : OFF  |  Python : OFF  |  Sudo : OFF  |  Pkexec : OFF
Directory :  C:/Python313/Lib/test/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : C:/Python313/Lib/test/__pycache__/test_curses.cpython-313.opt-1.pyc
�

��iK�����SSKrSSKrSSKrSSKrSSKrSSKrSSKrSSKJr SSK	J
r
JrJrJ
r
JrJrJr SSKJr \
"S5 \"S5r\"S5 \"S5 SSKrSrS	rS
r\R2R5S5rSr\R:\R<4S
SS/r\R@"\(+=(d \S:HS\-5\R@"\RBS:HS5"SS\RD555r#"SS\RD5r$"SS\RD5r%Sr&"SS\RD5r'\(S:Xa\RR"5 gg!\a GNf=f)�N)�	MagicMock)�requires�verbose�SaveSignals�cpython_only�check_disallow_instantiation�MISSING_C_DOCSTRINGS�
gc_collect)�
import_module�curseszcurses.asciizcurses.textpadc�R�[R"[[U5SU-5$)Nzrequires curses.%s)�unittest�
skipUnless�hasattrr)�names �%C:\Python313\\Lib\test\test_curses.py�requires_curses_funcrs&�����w�v�t�4�3�d�:�<�<�c�^�U4SjnU$)Nc�J>^�[R"T5UU4Sj5nU$)Nc�>�[URT5(d[R"ST-5eT"U/UQ70UD6 g)Nzrequires curses.window.%s)r�stdscrr�SkipTest)�self�args�kwargsr�tests   ��r�wrapped�:requires_curses_window_meth.<locals>.deco.<locals>.wrapped#s=����4�;�;��-�-��'�'�(C�d�(J�K�K���'��'��'r��	functools�wraps)rrrs` �r�deco�)requires_curses_window_meth.<locals>.deco"s%���	����	�	(�
�	(��r�)rr#s` r�requires_curses_window_methr&!s�����Krc�F^�[R"T5U4Sj5nU$)Nc�>�[R"5(dURS5 [R"5 T"U/UQ70UD6 g)N�requires colors support)r�
has_colors�skipTest�start_color)rrrrs   �rr� requires_colors.<locals>.wrapped-s=���� � �"�"��M�M�3�4������T�#�D�#�F�#rr )rrs` r�requires_colorsr.,s%����_�_�T��$��$�
�Nr�TERMi��rr����r2)�r�unknownz*$TERM=%r, calling initscr() may cause exit�cygwinz!cygwin's curses mostly just hangsc�>�\rSrSr\S5rSr\"S5S5r\"S5S5r	Sr
S	rS
rSr
SrS
rSrSrSrSrSrSrSrSr\"S5S5rSrSrSr\"S5S5r\"S5S5rSrS r S!r!S"r"S#r#S$r$S%r%S&r&S'r'\"S(5S)5r(S*r)S+r*S,r+S-r,\"S.5S/5r-\"S05S15r.\"S25S35r/S4r0S5r1S6r2S7r3S8r4\5S95r6\5S:5r7S;r8\5S<5r9\5S=5r:\5S>5r;\"S?5\5S@55r<SAr=\"SB5SC5r>\"SD5SE5r?\"SF5SG5r@\"SF5SH5rA\"SF5SI5rB\C\"SF5SJ55rD\"SK5SL5rE\"SM5SN5rF\"SO5SP5rGSQrHSRrI\"SS5\JR�"\L"\MSTSU5SV:SW5SX55rNSYrO\JR�"\PSZ5S[5rQ\"S5S\5rRS]rSg^)_�
TestCurses�?c��[(a [S[3[RSS9 [R
R
5n[R"US9 g)NzTERM=T��file�flush)�fd)	r�print�term�sys�stderr�
__stdout__�filenor�	setupterm)�cls�	stdout_fds  r�
setUpClass�TestCurses.setUpClassEs?���7��E�$��.�s�z�z��>��N�N�)�)�+�	����I�&rc��SUl[RUl[RR	5n[RR5(d�[
R"U5nUR[
RU5 UR[
RX!5 [RR5(a&[Rn[RUlO.[SSSS9nURUR5 SUl[
R"UR	5U5 [5UlUR R#5 URUR R$5 [&(a]URbP[R(R+5 [R,R+5 [/URSS9 [0R2"5UlUR(aS[0R6"5 UR[0R85 UR[0R:5 UR4R=5 g![a  [R"SSS9nSUlGN�f=f)	NTz/dev/tty�wbr)�	buffering)�moderKFr:)�isattyr@rB�outputrC�os�dup�
addCleanup�close�dup2�
__stderr__�open�OSError�tempfile�
TemporaryFiler�save_signals�save�restorerrAr<�stdoutr>r�initscrr�savetty�endwin�resetty�erase)rrF�dup_fd�tmps    r�setUp�TestCurses.setUpNs�������n�n����N�N�)�)�+�	��~�~�$�$�&�&��V�V�I�&�F��O�O�B�H�H�f�-��O�O�B�G�G�V�7��~�~�$�$�&�&��n�n��!�n�n���	(��z�4�1�=�C�����	�	�*�"����G�G�C�J�J�L�)�,�'�M�������� �����)�)�1�1�2��7�t�{�{�.��J�J�����J�J�����t�{�{�$�/��n�n�&����;�;��N�N���O�O�F�M�M�*��O�O�F�N�N�+��������1�(�
#�0�0�d�a�H�C�"'�D�K�
(�s�>J�&K	�K	�filterc�.�[R"5 g�N)rrf�rs r�test_filter�TestCurses.test_filter~s
��	�
�
�r�use_envc�\�[R"S5 [R"S5 g)NFT)rrlris r�test_use_env�TestCurses.test_use_env�s��	���u�����t�rc�	�[R"SS5nURUR5S5 URUR	5S5 URUR5S5 [R"SSSS5nURUR5S5 URUR	5S5 URUR5S	5 UR
S
S5nURUR5S5 URUR	5S
5 URUR5S5 UR
SSS
S5nURUR5S5 URUR	5S
5 URUR5S5 URSS
5nURUR5S5 URUR	5S5 URUR5S5 URSSSS
5nURUR5S5 URUR	5S5 URUR5S5 URSS5 URUR5S5 URUR	5S5 URUR5S	5 URUR5S5 URUR	5S
5 URUR5S5 URUR5S5 URUR	5S5 URUR5S5 URSS5 URUR5S5 URUR	5S5 URUR5S5 URSS5 URUR5S5 URUR	5S5 URUR5S5 g)N��
r0r1)rqrrr3�)rsrq)rrr3��)rtru��rs)�	�
)��)rsrt)r{���)r}r~rrw)rrw)rsrw)
r�newwin�assertEqual�getbegyx�getparyx�getmaxyx�subwin�derwin�mvwin�mvderwin)r�win�win2�win3s    r�test_create_windows�TestCurses.test_create_windows�sm���m�m�A�r�"����������0���������2���������1��m�m�B��A�q�)����������0���������2���������2��z�z�!�Q����������&�1��������&�1��������'�2��z�z�!�R��A�&���������&�1��������&�1��������'�2��z�z�!�Q����������&�1��������&�1��������'�2��z�z�!�R��A�&���������&�1��������&�1��������'�2��	�	�!�Q����������0���������2���������2��������&�1��������&�1��������'�2��������&�1��������&�1��������'�2��
�
�a����������&�1��������&�1��������'�2��
�
�a����������&�1��������&�1��������'�2rc��[R"SS5nURSS5nA[5 A[5 g)Nrqrrrtru)rrr�r
)rr�r�s   r�test_subwindows_references�%TestCurses.test_subwindows_references�s2���m�m�A�r�"���z�z�!�Q��������rc�l�URnURSSSS5nURSS5 URSS5 URUR	5S5 URUR	5S5 UR5 URUR	5S	5 g)
Nrrr3rsrqrwrzrv)rsrz)rzrx)rr��mover��getyx�	cursyncup)rrr�s   r�test_move_cursor�TestCurses.test_move_cursor�s��������m�m�B��A�q�)�����A�q������A����������0��������f�-��
�
����������0rc��URnUR5 URUR5S5 UR	5 URUR5S5 UR5 URUR5S5 UR	5 URUR5S5 UR5 URUR5S5 UR
SS5 URURS5S5 URURS5S5 URUR5S5 UR
SSS5 URURS5S5 URSSSS5nURSSS	S
5nUR	5 UR5 UR5 URUR5S5 URUR5S5 UR	5 UR5 UR5 UR5 URUR5S5 [US5(a�[RRS5(d�UR5 UR5 S
HenURU5 UR!S5 URUR5U5 URUR5U5 Mg ggg)NFTrqrsr}rwrrr3rtru�syncok�sunos)FT�a)r�refresh�assertIs�
is_wintouched�touchwin�
untouchwin�	touchline�is_linetouchedr��syncup�syncdownrr@�platform�
startswithr��addch)rrr�r�r�s     r�test_refresh_control�TestCurses.test_refresh_control�s�����������
�
�f�*�*�,�e�4������
�
�f�*�*�,�d�3������
�
�f�*�*�,�e�4������
�
�f�*�*�,�d�3������
�
�f�*�*�,�e�4�	����A���
�
�f�+�+�A�.��5��
�
�f�+�+�A�.��5��
�
�f�*�*�,�d�3�����A�u�%��
�
�f�+�+�A�.��6��m�m�B��A�q�)���z�z�!�R��A�&���
�
���������
��
�
�c�'�'�)�4�0��
�
�f�*�*�,�d�3�	�������������
�
���
�
�d�(�(�*�D�1��6�8�$�$�S�\�\�-D�-D�W�-M�-M��N�N������'�����F�#��
�
�3���
�
�c�/�/�1�6�:��
�
�f�2�2�4�f�=�	(�.N�$rc��URnURnUR5 URSS5 UR	S5 UR	S5 UR	S5 SnUR	U5 UR	S[R5 UR	SSS5 UR	SSS[R5 URUR5S	5 UR5 URSS5 UR!S5 UR!S5 UR!S5 UR
[
[45 UR!S
5 SSS5 UR!S[R5 URUR5S5 g![
a% UR
[
URU5 GNn[a: URU5nUR[U5S[U55 GN�f=f!,(df   N�=f)Nr�A�A�A�€rwrsrtTuĔF)r�encodingr�r�r��UnicodeEncodeError�assertRaises�encode�
OverflowError�assertNotEqual�len�reprr�A_BOLDr�r��echochar)rrr��c�encodeds     r�test_output_character� TestCurses.test_output_characters��������?�?���������A�q�����S�����T�����R����	@��L�L��O�	���S�&�-�-�(����Q��3�����Q��3��
�
�.��
�
�f�*�*�,�d�3�	�������A�q�����������������
�
�
� 2�M�B�
C�
�O�O�H�%�
D�	����V�]�]�+��
�
�f�*�*�,�e�4��1"�	F����0�!�(�(�H�E��	@��h�h�x�(�G�����G��a��g��?�	@��D�
C�s$�1G�'H6�+H3�0?H3�2H3�6
Ic	��URnURnURUR4H�nUR	UR
5 UR
SS5 U"S5 U"S5 SnU"U5 U"S[R5 U"SSS5 U"SSS[R5 SSS5 M� URUR4H�nUR	UR
5 UR
SS5 U"SS5 U"S	S5 S
nU"US5 U"SS5 U"SS[R5 U"SSSS5 U"SSSS[R5 SSS5 M� g![a% UR[URU5 GN.f=f!,(df   GM�=f![a$ UR[URU5 N�f=f!,(df   GM(=f)Nr�abcdsabcduàßçđrwrsrt�1234s1234u١٢٣٤rq)rr��addstr�insstr�subTest�__qualname__r�r�r�r�rr��addnstr�insnstr)rrr��func�ss     r�test_output_string�TestCurses.test_output_string(s��������?�?���]�]�F�M�M�2�D����d�/�/�0����A�q�!��V���W�
���N���G��V�V�]�]�+��Q��6�"��Q��6�6�=�=�1�1�0�3��^�^�V�^�^�4�D����d�/�/�0����A�q�!��V�Q���W�a� �.��N���A�J��V�Q���V�Q��
�
�.��Q��6�1�%��Q��6�1�f�m�m�4�1�0�5��*�N��%�%�&8�!�(�(�H�M�N��1�0��,*�N��%�%�&8�!�(�(�H�M�N��1�0�sa�%F/�5E=�=:F/�9'G3�!	G�*AG3�=+F,�(F/�+F,�,F/�/
F?	�+G0�-G3�/G0�0G3�3
H	c��URnSH�nURUS9 UR[URU5 UR[UR
US5 UR[URU5 UR[URUS5 SSS5 M� g!,(df   M�=f)N)zasa)�argrw)rr�r��
ValueErrorr�r�r�r�)rrr�s   r�&test_output_string_embedded_null_chars�1TestCurses.test_output_string_embedded_null_charsJs�������"�C����#��&��!�!�*�f�m�m�S�A��!�!�*�f�n�n�c�1�E��!�!�*�f�m�m�S�A��!�!�*�f�n�n�c�1�E�	'�&�#�&�&�s�BB5�5
C	c��URnURSSS[R5 UR	SS5 URUR
5S[R-5 URUR
SS5S[R-5 UR	SS5 URUR5SSS5 URURS5SSS	5 URURSS
5SSS5 URURSS
S5S5 UR[URS
5 UR[URSS
S
5 g)Nrrw�ABCDr�rt�Cr}s ABCD s ABrsrzsBCD ���)
rr�rr�r�r��inch�instrr�r��rrs  r�test_read_from_window� TestCurses.test_read_from_windowTs+�������
�
�a��F�F�M�M�2����A�q����������V�]�]�(:�;�������Q��*�B����,>�?����A�q�����������+�Y�7�������a���!�,�f�5�������a��+�B�Q�/��9�������a��A�.��8����*�f�l�l�B�7����*�f�l�l�A�q�"�=rc��[R"SSSS5nSSSS2Hn[R"U5 M URUR	SS5S5 URUR5S	5 URUR	SS
5S5 URUR5S5 URUR	5S
5 URUR5S5 URUR	5S5 URUR	5S5 g)Nrqr|rszspam
r2rtrw�s)rtrwrz�p)rtrz�a�mrr)rr�ungetchr��getchr��rr�r�s   r�
test_getch�TestCurses.test_getchds����m�m�A�r�1�a�(���$�B�$��A��N�N�1�� �������1�a��'�2��������f�-�������1�a��'�2��������f�-��������g�.��������f�-��������g�.��������h�/rc��[R"SSSS5n[R"5 UR[R5 UR[URS5 UR[URSSS5 SSSS2Hn[R"U5 M URURSSS5S	5 URURSS
5S5 URURSSS5S
5 URURSS
5S5 URURSS5S5 URURSS
5S5 URURS5S5 URURSS
5S5 URUR5S5 URURSS
5S5 g)Nrqr|rsip���rtzLorem
ipsum
dolor
sit
amet
r2rwsLors Lo         rrsipsums Lo  ipsum  sdolors     dolor  ssissi   dolor  sametsamet dolor  )rr�echorQ�noechor�r��getstrr�r�r�r�s   r�test_getstr�TestCurses.test_getstrss����m�m�A�r�1�a�(�����
�����
�
�&����*�c�j�j�$�7����*�c�j�j�!�Q��=�4�D�b�D�9�A��N�N�1��:�������A�q�!�,�e�4�������1�a��/�:�������A�q�"�-�x�8�������1�a��/�:�������A�q�)�8�4�������1�a��/�:�������A���.�������1�a��/�:��������w�/�������1�a��/�:rc�v�[R"SSSS5n[U5 URSS5 UR	5 URUR
SS5R5S5 URUR
SS5R5S5 URSS	5 UR5 URUR
SS5R5S
5 URUR
SS5R5S5 URUR4Hun[U5 U"5 URUR
SS5R5S5 URUR
SS5R5S5 Mw g)Nrqr3rsrr{sLorem iprw�dolor sit amet,rtsLorr)rr�lorem_ipsumr��clrtoeolr�r��rstrip�clrtobotra�clear)rr�r�s   r�
test_clear�TestCurses.test_clear�sA���m�m�A�r�1�a�(���C������A������������1�a��/�/�1�;�?�������1�a��/�/�1�3E�F�����A������������1�a��/�/�1�6�:�������1�a��/�/�1�3�7��Y�Y��	�	�*�D�����F����S�Y�Y�q�!�_�3�3�5�s�;����S�Y�Y�q�!�_�3�3�5�s�;�	+rc��[R"SSSS5n[U5 URSS5 UR	5 URUR
SS5S5 UR	SS5 URUR
SS5S5 URSS5 UR5 URUR
SS5S5 URUR
SS5S	5 URUR
SS5S
5 URUR
SS5S5 URUR
S
S5S5 URSS5 UR5 URUR
SS5S5 URUR
SS5S5 URUR
SS5S	5 UR5 [U5 URSS5 URS5 URUR
SS5S5 URUR
SS5S5 URUR
SS5S5 URUR
SS5S5 UR5 [U5 URSS5 URS5 URUR
SS5S5 URUR
SS5S
5 URUR
SS5S5 URUR
SS5S5 g)Nrqr3rsrsLoem ipsum     rusLoem ipum      rwsconsectetur    �adipiscing elitrtssed do eiusmod rz�               sLorem ipsum    r�r�)rrr�r��delchr�r��deleteln�insertlnr��insdelln�rr�s  r�test_insert_delete�TestCurses.test_insert_delete�s����m�m�A�r�1�a�(���C������A���	�	��������1�a��*<�=��	�	�!�Q��������1�a��*<�=�����A������������1�a��*<�=�������1�a��*<�=�������1�a��*<�=�������1�a��*<�=�������1�a��*<�=�����A������������1�a��*<�=�������1�a��*<�=�������1�a��*<�=��	�	���C������A�����Q��������1�a��*<�=�������1�a��*<�=�������1�a��*<�=�������1�a��*<�=��	�	���C������A�����R��������1�a��*<�=�������1�a��*<�=�������1�a��*<�=�������1�a��*<�=rc�H�[R"SSSS5n[U5 URS5 UR	5 URUR
SS5S5 UR	S5 URUR
SS5S5 UR	S5 URUR
SS5S	5 URUR
SS5S	5 URUR
S
S5S5 URS5 g)Nrqr3rsTrr�r����r�rtF)rrr��scrollok�scrollr�r�r�s  r�test_scroll�TestCurses.test_scroll�s����m�m�A�r�1�a�(���C�����T���
�
��������1�a��*<�=��
�
�1�
�������1�a��*<�=��
�
�2��������1�a��*<�=�������1�a��*<�=�������1�a��*<�=����U�rc�0�[R"SSSS5nUR[R5 UR	[R5 UR[R5 UR
5 UR5 g)Nrqr3rs)rr�attronr��attroff�attrset�standout�standendr�s  r�test_attributes�TestCurses.test_attributes�sX���m�m�A�r�1�a�(���
�
�6�=�=�!����F�M�M�"����F�M�M�"��������r�chgatc�@�[R"SSSS5nURSSS5 URSSS5 URSS5 UR	[R
5 UR
URSS	5S
5 UR
URSS5S[R
-5 UR
URSS5S
[R
-5 URSS5 UR	S[R5 UR
URSS5S5 UR
URSS5S[R-5 UR
URSS5S[R-5 UR
URSS5S5 UR	SS[R5 UR
URSS5S5 UR
URSS5S[R-5 UR
URSS5S
[R-5 UR	SSS	[R
5 UR
URSS5S[R-5 UR
URSS5S[R
-5 UR
URSS5S[R
-5 UR
URSS5S[R-5 UR
URSS5S
[R-5 g)Nrqr3rsr�Lorem ipsumrtzdolor sit ametr{rur�r��� rw�L�o�erzr��l�rrrr�r~)
rrr�r�r�A_BLINKr�r�r��A_UNDERLINEr�s  r�
test_chgat�TestCurses.test_chgat�s����m�m�A�r�1�a�(���
�
�1�a��'��
�
�1�a�)�*�����A���	�	�&�.�.�!�������!�Q���1�������!�Q���6�>�>�)A�B�������!�R��'�F�N�N�*B�C�����A���	�	�!�V�]�]�#�������!�Q���1�������!�Q���6�=�=�)@�A�������!�Q���6�=�=�)@�A�������!�Q���1��	�	�!�Q��*�*�+�������!�Q���1�������!�Q���6�3E�3E�)E�F�������!�R��'�F�4F�4F�*F�G��	�	�!�Q��6�>�>�*�������!�Q���6�3E�3E�)E�F�������!�Q���6�>�>�)A�B�������!�R��'�F�N�N�*B�C�������!�R��'�F�4F�4F�*F�G�������!�R��'�F�4F�4F�*F�Grc���[R"SSSS5nURSSS5 URUR	5S5 URS5 UR
UR	5S5 URS	5 UR
UR	5S
5 URS5 UR
UR	5S5 URS5 UR
UR	5S5 URS
[R5 UR
UR	5S
[R-5 UR
URSS5S5 UR
URSS5S5 URS5 URS5 UR
UR	5S5 UR
URSS5S5 UR
URSS5S5 URS
[R5 UR
UR	5S
[R-5 UR
URSS5S[R-5 UR
URSS5S
[R-5 g)Nrqr3rsrr	)rr�_�_�#�#r�r�#r)
rrr��assertIn�getbkgd�bkgdsetr��	A_REVERSEr��bkgdr�s  r�test_background�TestCurses.test_background�s���m�m�A�r�1�a�(���
�
�1�a��'��
�
�c�k�k�m�W�-�	���C����������0����D����������0����B����������+����A����������+����C��)�)�*���������&�2B�2B�(B�C�������!�Q���1�������!�Q���1����A��	����
���������0�������!�Q���1�������!�Q���1�����f�&�&�'���������&�2B�2B�(B�C�������!�Q���6�3C�3C�)C�D�������!�Q���6�3C�3C�)C�Drc	� �[R"SSSS5n[U5 [R"SSSS5n[S5HnUR	USS	5 M URU5 UR
URSS5S
5 UR
URSS5S5 UR
URS
S5S5 UR
URSS5S5 URU5 UR
URSS5S5 UR
URSS5S5 UR
URS
S5S5 UR
URSS5S5 URUSSSS
SS5 UR
URSS5S5 UR
URSS5S5 UR
URSS5S5 URUSSSS
SS5 UR
URSS5S5 UR
URSS5S5 UR
URSS5S5 g)Nrq�rtrzru�r}r�_________________ssectetur_________rwspiscing_elit,____rss_do_eiusmod______s_________________ssectetur       __spiscing elit,  __s do eiusmod    __r~s__r_sit_amet_____s__ectetur________s__r sit amet_____s__ectetur   _____)	rrr��ranger��overlayr�r��	overwrite)r�srcwin�dstwin�is    r�test_overlay�TestCurses.test_overlays&�����q�"�a��+���F�����q�"�a��+���q��A��M�M�!�Q��'��	���v��������a��+�-A�B�������a��+�-A�B�������a��+�-A�B�������a��+�-A�B����� �������a��+�-A�B�������a��+�-A�B�������a��+�-A�B�������a��+�-A�B����v�q�!�Q��1�b�1�������a��+�-A�B�������a��+�-A�B�������a��+�-A�B������A�q�!�Q��3�������a��+�-A�B�������a��+�-A�B�������a��+�-A�Brc���[R"SSSS5nUR5 URSS5 UR	5 UR5 [R"5 g)Nrqr3rsrw)rr�noutrefresh�redrawln�	redrawwinr��doupdater�s  r�test_refresh�TestCurses.test_refresh<sJ���m�m�A�r�1�a�(���������Q����
�
�����
����r�resizec��[R"SSSS5nURSS5 URUR	5S5 URSS5 URUR	5S5 g)Nrqr3rsrz�)rzr7)rqr3)rrr5r�r�r�s  r�test_resize�TestCurses.test_resizeDs^���m�m�A�r�1�a�(���
�
�1�b����������1��
�
�1�b����������1r�enclosec���[R"SSSS5nURURSS5S5 URURSS5S5 URURSS5S5 URURSS	5S5 URURS
S	5S5 URURSS5S5 g)Nrqr3rsTrwFrzr}�rur7)rrr�r:r�s  r�test_enclose�TestCurses.test_encloseLs����m�m�A�r�1�a�(���
�
�c�k�k�!�Q�'��.��
�
�c�k�k�!�Q�'��/��
�
�c�k�k�!�Q�'��/��
�
�c�k�k�!�R�(�$�/��
�
�c�k�k�!�R�(�%�0��
�
�c�k�k�!�R�(�%�0rc���[R"SSSS5nURSSS5 [R"5nURU5 AUR
S5 [R"U5nURUR5S5 URUR5S5 URURSS5S	5 SSS5 g!,(df   g=f)
Nrqr|rwrsr	rrv)rqr|s Lorem ipsum)rrr�rWrX�putwin�seek�getwinr�r�r�r�)rr��fs   r�test_putwin�TestCurses.test_putwinVs����m�m�A�r�1�a�(���
�
�1�a��'�
�
#�
#�
%���J�J�q�M��
�F�F�1�I��-�-��"�C����S�\�\�^�V�4����S�\�\�^�W�5����S�Y�Y�q�!�_�o�>�&�
%�
%�s
�BC'�'
C5c
�x	�[R"SSSS5nURSSSSSS	S
S5 URUR	SS5S
5 URUR	SS5S5 URUR	SS5S5 URSSSSSSSS5 URSSSSSSS S!5 UR[URSSSSS/S S!5
 UR[URSSSSSSS S!S"5 UR[URSSSSSSS S!S"5 URSSSSSSS 5 URSSSSSS5 URSSSSS5 URSSSS5 URSSS5 URSS5 URS5 UR5 URS#S$5 URUR	SSS%5S&5 URUR	SS5S'5 URUR	SSS%5S&5 URS(S)5 URSS5 UR[URSSS5 UR[URS5 UR5 URSS5 URSS5 URUR	SSS*5S+5 URSS5 URS,S5 URSS[R5 URSSSS5 URSSSS[R5 URSS5 URS-S.5 URS/S.5 URS0S.5 URS-S.[R5 URSSS-S.5 URSSS1S[R5 URURSS5S2[R-5 URURSS5S2[R-5 URURS.S5S05 g)3Nrqrrrs�|�!�-r�+�\r�/rs
+--------\rws
|        !rzs
#________/�|�!�-�_�+�\r�/r��Br��D�E�F�G�H�I�:�~r{s~~~~~~~~s
:        :�:�~rus ----- �-r�rt�ar��;�;)rr�borderr�r�r��	TypeError�boxr��hliner��vline�
A_STANDOUTr�r�s  r�test_borders_and_lines�!TestCurses.test_borders_and_linesbs����m�m�A�r�1�a�(���
�
�3��S�#���c�3�	(�������1�a��.�9�������1�a��-�8�������1�a��-�8��
�
�4��t�T����d�	,��
�
�2�r�2�r��r�2�r�	#����)�S�Z�Z��b�"�b�"�b�"�b�	:����)�S�Z�Z��b�"�b�"�b�"�b�"�	>����)�S�Z�Z��b�"�b�"�b�"�b�"�	>��
�
�2�r�2�r�2�r�2�.��
�
�2�r�2�r�2�r�*��
�
�2�r�2�r�2�&��
�
�2�r�2�r�"��
�
�2�r�2���
�
�2�r���
�
�2���
�
������S��������1�a��+�[�9�������1�a��M�:�������1�a��+�[�9�����d������B�����)�S�W�W�b�"�b�9����)�S�W�W�b�1����	�����A���	�	�#�q��������1�a��+�Z�8��	�	�$����	�	�"�a���	�	�#�q�&�-�-�(��	�	�!�Q��Q���	�	�!�Q��Q��
�
�.�����A���	�	�#�q���	�	�$����	�	�"�a���	�	�#�q�&�+�+�,��	�	�!�Q��Q���	�	�!�Q��Q�� 1� 1�2�������!�Q���6�3D�3D�)D�E�������!�Q���6�3D�3D�)D�E�������!�Q���1rc�>�UR[R"S5S5 UR[R"S5S5 UR[R"S5S5 UR[R"S5S5 UR[R"S5S5 UR[R"S5S5 UR[[RS5 UR[[RS	5 UR[[RS
5 UR[[RS5 UR[
[RS5 g)
Nr�r�r��
s^J�
rrrsAB��AB�)r�r�unctrlr�rdr�ris r�test_unctrl�TestCurses.test_unctrl�s��������t�,�d�3�������s�+�T�2�������r�*�D�1�������u�-�u�5�������t�,�e�4�������r�*�E�2����)�V�]�]�C�8����)�V�]�]�E�:����)�V�]�]�B�7����)�V�]�]�D�9����-�����>rc�z�UR(dURS5 UR[R"5S5 [R
"5 UR[R"5S5 [R"5 UR[R"5S5 g)N�requires terminalFT)rMr+r�r�isendwinr_r2ris r�test_endwin�TestCurses.test_endwin�sh���{�{��M�M�-�.��
�
�f�o�o�'��/��
�
���
�
�f�o�o�'��.������
�
�f�o�o�'��/rc��UR[R"S5[5 UR	[R"S5S5 UR	[R"S5S5 UR[R
"S5[5 UR	[R
"S5S5 UR	[R
"S5S5 UR[R"S5[[S545 UR[R"S55 UR[R"S55 [R"S5nUbpURU[5 [R"US5 [R"US5nURU[5 [R"U5 [R"S5 g)	N�hc�colsr2�crr��cudrssabc
)�assertIsInstancer�	tigetflag�intr��tigetnum�tigetstr�bytes�type�assertIsNone�tparm�putp)rr}�cud_2s   r�
test_terminfo�TestCurses.test_terminfo�sW�����f�.�.�t�4�c�:�����)�)�&�1�2�6�����)�)�$�/��4����f�o�o�f�5�s�;��������.��3��������.��3����f�o�o�d�3�e�T�$�Z�5H�I����&�/�/�$�/�0����&�/�/�&�1�2��o�o�e�$���?��!�!�#�u�-��L�L��a� ��L�L��a�(�E��!�!�%��/��K�K������H�rc�(�[R"S5 [R"5 [R"5 UR	[R
"5S5 [R"S5 [R"SS5 g)NrwF�d�2)r�delay_output�flushinpr2r�rv�napms�newpadris r�test_misc_module_funcs�!TestCurses.test_misc_module_funcs�sS�����A�����������
�
�f�o�o�'��/����S���
�
�b�"�rc��UR[R"5[5 UR[R"5[5 UR[R
"5[5 UR[R"5[5 UR[R"5[5 UR[R"5[5 [R"5nURU[5 UR[U5S5 [R"5nURU[5 UR[U5S5 g)Nrw)r~r�termnamer��longname�baudrater��has_ic�bool�has_il�	termattrs�killcharr�r��	erasechar)rr�s  r�test_env_queries�TestCurses.test_env_queries�s������f�o�o�/��7����f�o�o�/��7����f�o�o�/��5����f�m�m�o�t�4����f�m�m�o�t�4����f�.�.�0�#�6��O�O������a��'�����Q���#���������a��'�����Q���#rc��URnURS5 URS5 URS5 URS5 URS5 URS5 [	US5(a"URS5 URS5 UR
S5 UR
S5 URS5 URS5 URSS5 [R"5 [R"S5 [R"S5 [R"5 g)NTF�immedokrqrr)r�clearok�idcok�idlokrr��leaveokr��	setscrregr�nonl�nlr�s  r�test_output_options�TestCurses.test_output_options�s����������t�����u�����T�����U�����U�����T���6�9�%�%��N�N�4� ��N�N�5�!����t�����u����������������B�����
��	�	�$���	�	�%���	�	�rc�(�URnUR(a�[R"5 [R"5 [R"S5 [R"S5 [R
"S5 [R
"S5 [R"5 [R"S5 [R"S5 [R"5 [R"5 [R"5 [R"S5 [R"S5 [R"S5 [R"S5 URS5 URS5 [R"S5 [R"S5 URS5 URS5 [R"5 [R"S5 [R"S5 [R"5 UR!S5 UR!S5 UR#S5 UR#S5 UR#S5 g)NFT�rwr2rrq)rrMr�nocbreak�cbreak�	intrflush�raw�norawr�r��	halfdelay�keypad�meta�nodelay�	noqiflush�qiflush�	notimeout�timeoutr�s  r�test_input_options�TestCurses.test_input_optionss�������;�;��O�O���M�M�O��M�M�%� ��M�M�$�����T�"����U�#��J�J�L��J�J�u���J�J�t���L�L�N��
�
�����
����E�����D�������������
�
�d���
�
�e�����D�����E�����t�����u���������t�����u�������������������r�����q�����q�r�	typeaheadc��[R"[RR	55 [R"S5 g)Nr2)rr�r@�	__stdin__rCris r�test_typeahead�TestCurses.test_typeahead/s+��������-�-�/�0�����rc��UR(dURS5 [R"5 [R"5 g)Nru)rMr+r�
def_prog_mode�reset_prog_moderis r�test_prog_mode�TestCurses.test_prog_mode4s.���{�{��M�M�-�.�������� rc��[R"S5c[R"S5b[R"5 g[R"5 g![Ra UR	S5 gf=f)N�bel�flashz
beep() failed)rr��beep�errorr+ris r�	test_beep�TestCurses.test_beep:sV���O�O�E�"�.����w�'�3��K�K�M�
/����
���<�<�
/��
�
�o�.�
/���A�%B�Bc��[R"S5c[R"S5b[R"5 g[R"5 g![Ra UR	S5 gf=f)Nr�r�zflash() failed)rr�r�r�r+ris r�
test_flash�TestCurses.test_flashDsW���O�O�E�"�.����w�'�3��L�L�N�
0�������<�<�
0��
�
�.�/�
0�r�c���SHKup[R"U5b[R"U5 M4[R"U5 MM g![Ra Mgf=f)N))r�civis)rs�cvvis)rw�cnorm)rr��curs_setr�)r�vis�caps   r�
test_curs_set�TestCurses.test_curs_setNsS��B�H�C����s�#�/�����$���O�O�C�(�C���|�|����s�A�A+�*A+�get_escdelayc��[R"5nURU[5 [R"S5 UR[R"5S5 [R"U5 g)N�)rr�r~r��set_escdelayr�)r�escdelays  r�
test_escdelay�TestCurses.test_escdelayXsU���&�&�(�����h��,����B������,�,�.��3����H�%r�get_tabsizec��[R"5nURU[5 [R"S5 UR[R"5S5 [R"U5 g)Nrz)rr�r~r��set_tabsizer�)r�tabsizes  r�test_tabsize�TestCurses.test_tabsize`sU���$�$�&�����g�s�+����1������+�+�-�q�1����7�#r�getsyxc��[R"5upURU[5 URU[5 [R"SS5 UR[R"5S5 g)Nrzrq)rzrq)rr�r~r��setsyxr�)r�y�xs   r�test_getsyx�TestCurses.test_getsyxhsS���}�}�������a��%����a��%��
�
�a����������&�1rc�0�S[RSSSSS4$)Nr2��������rp�r�COLORSris r�
bad_colors�TestCurses.bad_colorsps���F�M�M�:�u�j�%��O�Orc�*�[RSSS4$)Nr�r�rpr�ris r�bad_colors2�TestCurses.bad_colors2ss���
�
�u�e�U�3�3rc��g)N)r2r�r�r�r�rpr%ris r�	bad_pairs�TestCurses.bad_pairsvs��@rc��UR[R"5[5 UR[R"5[5 grh)r~rr*r��can_change_colorris r�test_has_colors�TestCurses.test_has_colorsys4�����f�/�/�1�4�8����f�5�5�7��>rc�@�[R"5(dURS5 [R"5 [(aS[S[R3[RS9 [S[R3[RS9 gg)Nr)z	COLORS = )r;zCOLOR_PAIRS = )
rr*r+r,rr>r�r@rA�COLOR_PAIRSris r�test_start_color�TestCurses.test_start_color}si��� � �"�"��M�M�3�4������7��I�f�m�m�_�-�C�J�J�?��N�6�#5�#5�"6�7�c�j�j�I�rc�b�UR[R"[R5S5 [R"S5 [RS-
n[R"U5 UR5H(nUR
[[RU5 M* g)N�rrrrrw)r�r�
color_content�COLOR_BLACKr�r�r�r�)r�maxcolor�colors   r�test_color_content�TestCurses.test_color_content�sv������-�-�f�.@�.@�A�9�M����Q���=�=�1�$�����X�&��_�_�&�E����j�&�*>�*>��F�'rc	��[R"5(dURS5 [R"S5n[R"S/UQ76 UR"[RS/UQ76 [R"SSSS5 UR[R"S5S5 [R"SSSS5 UR[R"S5S5 [RS-
n[R"U5n[R"U/UQ76 UR"[RU/UQ76 [R"USSS5 UR[R"U5S	5 UR5H+nUR[[RUSSS5 M- S
H{nUR[[RSUSS5 UR[[RSSUS5 UR[[RSSSU5 M} g![R
a URS5 GN*f=f)Nzcannot change colorrz)cannot change color (init_color() failed)r��)rrrrw��)rrr)r2i�)rr�r+r�
init_colorr�rQr�r�r�r�r�)r�oldr	r
�comps     r�test_init_color�TestCurses.test_init_color�s����&�&�(�(��M�M�/�0��"�"�1�%��	G����a�&�#�&�	
����)�)�1�3�s�3����!�Q��1�%�����-�-�a�0�)�<����!�T�4��.�����-�-�a�0�2D�E��=�=�1�$���"�"�8�,�����(�)�S�)�����)�)�8�:�c�:����(�A�s�D�1�����-�-�h�7��H��_�_�&�E����j�&�*;�*;�U�A�q�!�L�'��D����j�&�*;�*;�Q��a��K����j�&�*;�*;�Q��4��K����j�&�*;�*;�Q��1�d�K���#�|�|�	G��M�M�E�F�	G�s�I�%J�Jc���[Rn[[S5(a�[R"5(aUS[R-S--
n[R"5(aS[R
s=::aS:aO O[
U[5n[R"US-
SS5 U$U$![a [RnU$f=f)N�ncurses_versionrsrw)r}rw)r}rsr)
rrr�has_extended_color_supportr�r�min�	SHORT_MAX�	init_pairr�)r�
pair_limits  r�get_pair_limit�TestCurses.get_pair_limit�s����'�'�
��6�,�-�-��0�0�2�2��a��
�
�o��1�1�
��5�5�7�7���!7�!7�@�&�@� ��Y�7�
�
0�� � ��a���A�6���z����
0�#�/�/�
���
0�s�"C�C�Cc��[[S5(d*UR[R"S5[5 [R"S5 UR5S-
nUS:�a[R"U5 UR
5H(nUR[[RU5 M* g)N�use_default_colorsrrw)	rrr�pair_content�DEFAULT_PAIR_CONTENTSrr�r�r�)r�maxpair�pairs   r�test_pair_content�TestCurses.test_pair_content�s����v�3�4�4��M�M�&�-�-�a�0�2G�H����A���%�%�'�!�+���Q�;�����(��N�N�$�D����j�&�*=�*=�t�D�%rc�8�[R"S5n[R"S/UQ76 UR"[RS/UQ76 [R"SSS5 UR	[R"S5S5 [R
S-
n[R"SUS5 UR	[R"S5US45 [R"SSU5 UR	[R"S5SU45 UR
5S-
nUS:�a>[R"USS5 UR	[R"U5S5 UR5H*nUR[[RUSS5 M, UR5HQnUR[[RSUS5 UR[[RSSU5 MS g)Nrwrr0)rr rrQr�r�rr�r�r�r�)rrr	r"r#r
s      r�test_init_pair�TestCurses.test_init_pair�s����!�!�!�$������!�S�!�����(�(�!�2�c�2�����A�q�!�����,�,�Q�/��8��=�=�1�$������H�a�(�����,�,�Q�/�(�A��?�����A�x�(�����,�,�Q�/�!�X��?��%�%�'�!�+���Q�;����W�a��+����V�0�0��9�6�B��N�N�$�D����j�&�*:�*:�D�!�Q�G�%��%�%�'�E����j�&�*:�*:�A�u�a�H����j�&�*:�*:�A�q�%�H�(rc��SHvn[R"U5nUR[R"U5X5 UR[R"U[R-5U5 Mx UR[R"S5S5 UR[R"S5S5 g)N)rrwr�r)r�
color_pairr��pair_numberr�)rr#�attrs   r�test_color_attrs�TestCurses.test_color_attrs�s����D��$�$�T�*�D����V�/�/��5�t�B����V�/�/��v�}�}�0D�E�t�L��	
����*�*�1�-�q�1�����+�+�A�.��2rrc�*�[R"S5n[R"5 UR[R"S5S5 UR
U[5 g![Ra UR	S5 Ndf=f)Nrz1cannot change color (use_default_colors() failed)r1)rr rr�r+r�rr!)rrs  r�test_use_default_colors�"TestCurses.test_use_default_colors�sv���!�!�!�$��	O��%�%�'�	
����,�,�Q�/��:��
�
�c�0�1���|�|�	O��M�M�M�N�	O�s�A*�*%B�Bc���UR[R"S5S5 UR[R"S5S5 UR[R"S5S5 UR[R"S5S5 UR[[RS	5 UR[R"S
5[5 g)Nr�r�rys^M�s^?rs^@r2�)r�r�keynamer�r�r~r�ris r�test_keyname�TestCurses.test_keyname�s����������+�T�2��������+�U�3��������,�e�4��������*�E�2����*�f�n�n�b�9����f�n�n�S�1�5�9r�has_keyc�0�[R"S5 g)Nry)rr8ris r�test_has_key�TestCurses.test_has_key�s�����r�r�getmousec�$�[R"[R5upUS:XaURS5 [R"S5 [R
"SSSS[R5 [R"5ng)Nrzmouse stuff not availablerr)r�	mousemask�BUTTON1_PRESSEDr+�
mouseinterval�
ungetmouser<)r�	availmask�oldmask�ms    r�
test_getmouse�TestCurses.test_getmousese��%�/�/��0F�0F�G�����>��M�M�5�6����R� ����!�Q��1�f�&<�&<�=��O�O��r�panelc��[R"SS5n[RRU5nUR	[RR
SS9 UR
5 SSS5 g!,(df   g=f)Nrrz!userptr should fail since not set)�msg)rrrG�	new_panelr�r��userptr)r�w�ps   r�test_userptr_without_set�#TestCurses.test_userptr_without_set
se���M�M�"�b�!���L�L�"�"�1�%��
�
�
�v�|�|�1�1�#F��H�
�I�I�K�H�H�H�s�A9�9
Bc�f�[R"SS5n[RRU5n[	5n[
R"U5n[S5HnURU5 M URS5 UR[
R"U5US5 g)Nrrr�zset_userptr leaked references)
rrrGrJ�objectr@�getrefcountr&�set_userptrr�)rrLrM�obj�nrefsr+s      r�test_userptr_memory_leak�#TestCurses.test_userptr_memory_leaks����M�M�"�b�!���L�L�"�"�1�%���h������$���s��A�
�M�M�#���	
�
�
�d���������-�u�8�	:rc��^�[R"SS5n[RRU5m"U4SjS5nTR	U"55 TR	S5 g)Nrrc�">�\rSrSrU4SjrSrg)�+TestCurses.test_userptr_segfault.<locals>.Ai'c�(>�TRS5 grh)rS)rrGs �r�__del__�3TestCurses.test_userptr_segfault.<locals>.A.__del__(s����!�!�$�'rr%N)�__name__�
__module__r��__firstlineno__r\�__static_attributes__)rGs�rr�rZ's
���
(�
(rr�)rrrGrJrS)rrLr�rGs   @r�test_userptr_segfault� TestCurses.test_userptr_segfault#sQ����M�M�"�b�!�����&�&�q�)��	(�	(�	���!�#��
���$�rc��[R"SS5n[RRU5n[	U[U55 g)Nrr)rrrGrJrr�)rrLrGs   r�test_disallow_instantiation�&TestCurses.test_disallow_instantiation-s6��
�M�M�"�b�!�����&�&�q�)��$�T�4��;�7r�is_term_resizedc���[R[Rp!UR[R"X5S5 UR[R"US-
US-
5S5 g)NFrwT)r�LINES�COLSr�rg�r�linesr{s   r�test_is_term_resized�TestCurses.test_is_term_resized5sM���l�l�F�K�K�t��
�
�f�,�,�U�9�5�A��
�
�f�,�,�U�1�W�d�1�f�=�t�Dr�resize_termc�:�[R"5 [R[Rp!US-
nUS-n[R"X45 UR[RU5 UR[RU5 [R"X5 UR[RU5 UR[RU5 UR
[5 [R"SS5 SSS5 UR
[5 [R"SS5 SSS5 [R"5nUR5 g!,(df   Ni=f!,(df   NE=f�Nrwi��)
r�update_lines_colsrirjror�r�r�r]ra�rrlr{�	new_lines�new_colsrcs      r�test_resize_term�TestCurses.test_resize_term;s��� � �"��l�l�F�K�K�t��A�I�	��!�8�����9�/�������y�1�������h�/����5�'�������u�-�������d�+�
�
�
�}�
-����u�a�(�.�
�
�
�}�
-����q�%�(�.��n�n����	�	��
.�
-��
-�
-���E;�5F�;
F	�
F�
resizetermc�:�[R"5 [R[Rp!US-
nUS-n[R"X45 UR[RU5 UR[RU5 [R"X5 UR[RU5 UR[RU5 UR
[5 [R"SS5 SSS5 UR
[5 [R"SS5 SSS5 [R"5nUR5 g!,(df   Ni=f!,(df   NE=frq)
rrrrirjryr�r�r�r]rarss      r�test_resizeterm�TestCurses.test_resizetermQs��� � �"��l�l�F�K�K�t��A�I�	��!�8�����)�.�������y�1�������h�/����%�&�������u�-�������d�+�
�
�
�}�
-����e�Q�'�.�
�
�
�}�
-����a��'�.��n�n����	�	��
.�
-��
-�
-�rxc��[R"S5 URURR	5S5 [R"S5 URURR	5S5 [R"S5 URURR	5S5 g)Nr�r��Br��C)rr�r�r�getkeyris r�test_ungetch�TestCurses.test_ungetchgs}�����t��������+�+�-�s�3����s��������+�+�-�s�3����r��������+�+�-�s�3rc�d�[R"S5 URR5 g)Ni)rr�rr�ris r�test_issue6243�TestCurses.test_issue6243os�����t�������r�	unget_wchr)�c)rqr{z.unget_wch is broken in ncurses 5.7 and earlierc
��URnURnSH�nURU5 [R
"U5 UR5nURXS5 [U5n[R
"U5 UR5nURXS5 M� g![a M�f=f![a1nURSU<SUR<SU<35 SnAN�SnAff=f)N)r��ér�u􏿿z
unget_wch(z) failed with encoding z: )rr�r�r�rr��	Exception�fail�get_wchr��ord)rrr��ch�err�read�codes       r�test_unget_wch�TestCurses.test_unget_wchss��������?�?��7�B�
��	�	�(�#�
8�� � ��$��>�>�#�D����T�&��r�7�D����T�"��>�>�#�D����T�&�!8��&�
��
���
8��	�	�����#�7�8�8��
8�s(�B/�C�/
B=�<B=�
C;�
'C6�6C;c�8�URnSSKnURnURU5 UR	[
5 SUlSSS5 X1lUR	[
5 U?SSS5 g!,(df   N5=f!,(df   g=f)Nrrr)r�codecsr��lookupr�rd)rrr�r�s    r�
test_encoding�TestCurses.test_encoding�so��������?�?���
�
�h��
�
�
�y�
)� �F�O�*�"��
�
�
�y�
)���*�
)�*�
)��*�
)�s�A:�.B�:
B�
Bz6Signature information for builtins requires docstringsc��URn[R"UR5nUR	U5 URRRS5SnURSU5 g![
a NGf=f)Nrmrz[y, x,])	r�inspect�	signaturer��assertFalser��__doc__�splitr)rrr��human_readable_signatures    r�test_issue21088�TestCurses.test_issue21088�sy������	��)�)�&�,�,�7�I����Y�'�$*�<�<�#7�#7�#=�#=�d�#C�A�#F� ��
�
�i�!9�:���	��	�s�1A:�:
B�Bc���[R"SSSS5n[RRUSS9nUR	5up4URUS-
US-
5 UR
S5 g)Nrqr3rsT)�insert_moder�)rr�textpad�Textboxr�r5�_insert_printable_char)rr�rerlr{s     r�test_issue13051�TestCurses.test_issue13051�s`���m�m�A�r�1�a�(���n�n�$�$�S�d�$�;���l�l�n����
�
�5��7�D��F�#��"�"�3�'r)rMrNrYrN)Tr^r_r�r`�classmethodrGrdrrjrnr�r�r�r�r�r�r�r�r�r�r�r�r�rr&rr r,r3r8r=rDrirrrwr�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�rr.rrrr$r'r-r0r6r:rErNrVrbrrermrvr{r�r�r�skipIf�getattrrr�r�r	r�r�rar%rrr7r7?s����'��'�.�`�(�#��$��
�)�$��%��23�h�	1�.>�`$5�L 5�DF�>� 
0�;�,<�((>�T��!��)�H�*�H�<E�BC�:�!��*�2�+�2�!��+�1�,�1�
?�62�p?�0��0	�$� �:,�\�+�&��'��!�/�0���.�)�&�*�&��-�(�$�)�$��(�#�2�$�2�P�4�A�?�J��G��G��L��L�:�"�	E��	E��I��I�.�3��3��.�/��2��0�2�:��)�$��%���*�%��&���'�"��#���'�"�
:�#�
:��'�"� �#� ���'�"�8�#��8��+�,�E�-�E�
�-�(��)��*�,�'��(��*4���+�&�
�_�_�W�V�%6��>��G�E�G�'�G�'�'�*	 ��_�_�)�M�O�;�O�;�8!��*�(�+�(rr7c�R�\rSrSr\"S5S5r\"S5S5rSrSrg)	�	MiscTestsi�rrc�B�[R"5 [R[Rp!S=[l[l[R"5 UR	[RU5 UR	[RU5 g)Nr)rrrrirjr�rks   r�test_update_lines_cols� MiscTests.test_update_lines_cols�s_��� � �"��l�l�F�K�K�t�%&�&���v�{�� � �"�������u�-�������d�+rrc��[Rn[(a[S[R3SS9 UR	USS[
5 UR
[U5S5 UR	US[5 UR	US[5 UR	US[5 UR	UR[5 UR	UR[5 UR	UR[5 UR
USUR5 UR
USUR5 UR
USUR5 URURS5 URURS5 URURS5 g)Nzncurses_version = T)r<rtrrwrs)
rrrr>r~�tupler�r�r��major�minor�patch�assertGreaterEqual)r�vs  r�test_ncurses_version�MiscTests.test_ncurses_version�sO���"�"���7��&�v�'=�'=�&>�?�t�L����a��d�E�*�����Q���#����a��d�C�(����a��d�C�(����a��d�C�(����a�g�g�s�+����a�g�g�s�+����a�g�g�s�+�����1��q�w�w�'�����1��q�w�w�'�����1��q�w�w�'��������+��������+��������+rc�Z�[R"5nURU[5 grh)rrr~r�)r�rs  r�test_has_extended_color_support�)MiscTests.test_has_extended_color_support�s ���-�-�/�����a��&rr%N)	r^r_r�r`rr�r�r�rar%rrr�r��s9���-�.�,�/�,��+�,�,�-�,�&'rr�c�8�\rSrSrSrSrSrSrSrSr	Sr
g	)
�	TestAsciii�c��[RRH-nUR[	[RU5U5 M/ grh)r�ascii�controlnames�
assertTruer)rrs  r�test_controlnames�TestAscii.test_controlnames�s/���L�L�-�-�D��O�O�G�F�L�L�$�7��>�.rc�~^^^�UUU4Sjn[S5GH�m[T5m[T/5nU"[RR
UR55 U"[RRUR
55 U"[RRUR55 U"[RRUR55 U"[RRUR55 U"[RRUR55 U"[RRTS:5 U"[RRTS:�5 U"[RRTS:5 U"[RRTS:=(d TS:H5 U"[RRTS;5 U"[RR STs=:=(a S:*Os 5 U"[RR"STs=:*=(a S:*Os 5 U"[RR$T[&R(;5 U"[RR*T[&R,;5 GM� SS	S[.R0[.R0S
-4GH�mTR3[RRT55 TR3[RR
T55 TR3[RRT55 TR3[RRT55 TR3[RRT55 TR3[RRT55 TR3[RRT55 TR3[RRT55 TR3[RRT55 TR3[RRT55 TR3[RR!T55 TR3[RR#T55 TR3[RR%T55 TR3[RR+T55 GM� TR3[RRS	55 g)Nc�>�TRTUS9 TRU"T5U5 TRU"T5U5 SSS5 g!,(df   g=f)N)r�r�)r�r�)r��expectedr�r+rs  ���r�check�$TestAscii.test_ctypes.<locals>.check�sG���������.�� � ��a��(�3�� � ��a��(�3�/�.�.�s�1A�
Ar4�rr3z 	�~r�r2rw)r&�chrr�rr��isalnum�isalpha�isdigit�islower�isspace�isupper�isascii�ismeta�isctrl�iscntrl�isblank�isgraph�isprint�ispunct�string�punctuation�isxdigit�	hexdigitsr@�
maxunicoder�)rr��br�r+s`  @@r�test_ctypes�TestAscii.test_ctypes�s����	4�
�s��A��A��A��q�c�
�A��&�,�,�&�&��	�	��4��&�,�,�&�&��	�	��4��&�,�,�&�&��	�	��4��&�,�,�&�&��	�	��4��&�,�,�&�&��	�	��4��&�,�,�&�&��	�	��4��&�,�,�&�&��C��0��&�,�,�%�%�q�C�x�0��&�,�,�%�%�q�2�v�.��&�,�,�&�&��B��(:�!�s�(�;��&�,�,�&�&��U�
�3��&�,�,�&�&��Q�
�
�#�
�6��&�,�,�&�&��a���3��7��&�,�,�&�&��V�-?�-?�(?�@��&�,�,�'�'��f�.>�.>�)>�?�%�(�b�#�s�~�~�s�~�~�a�/?�@�A����V�\�\�1�1�!�4�5����V�\�\�1�1�!�4�5����V�\�\�1�1�!�4�5����V�\�\�1�1�!�4�5����V�\�\�1�1�!�4�5����V�\�\�1�1�!�4�5����V�\�\�1�1�!�4�5����V�\�\�0�0��3�4����V�\�\�1�1�!�4�5����V�\�\�1�1�!�4�5����V�\�\�1�1�!�4�5����V�\�\�1�1�!�4�5����V�\�\�1�1�!�4�5����V�\�\�2�2�1�5�6�A�"	
������,�,�R�0�1rc���[RRnURU"S5S5 URU"S5S5 URU"[S55[S55 g)N�Ár�)rr�r�r�)rr�s  r�
test_ascii�TestAscii.test_asciisV�����"�"������v���,�����s��S�)�����s�6�{�+�S��X�6rc��[RRnURU"S5S5 URU"S5S5 URU"S5S5 URU"[	S55[	S55 g)N�Jrm�@�)rr��ctrlr�r�)rr�s  r�	test_ctrl�TestAscii.test_ctrlsi���|�|� � ������c��D�)�����d��T�*�����c��D�)�����c�#�h���T��3rc���[RRnURU"S5S5 URU"S5S5 URU"[	S55S5 g)Nrm�Šr�r��)rr��altr�r�)rr�s  r�test_alt�TestAscii.test_alt"sQ���l�l��������T��F�+�����S��6�*�����S��X���-rc���[RRnURU"S5S5 URU"S5S5 URU"S5S5 URU"S5S5 URU"S5S5 URU"S5S5 URU"S	5S
5 URU"[	S55S5 URU"[	S55S5 URU"S5S5 URU"S
5S5 URU"[	S55S5 URU"[	S
55S5 g)Nr�r�ra� �z^?rmz^Jr�z^@r�z!^Jr�z!A)rr�rqr�r�)rrqs  rrr�TestAscii.test_unctrl(s)�����$�$��������c�*�������c�*�������c�*�������c�*��������.�������t�,�������t�,������C��)�3�/������D�	�*�D�1��������/��������.������F��,�e�4������F��,�d�3rr%N)r^r_r�r`r�r�r�r�r�rrrar%rrr�r��s!��?�+2�Z7�4�.�4rr�c��/SQnUR5up#[USU5H#upEURUSUSX4US-
:H-
5 M% g)N)	r	zdolor sit amet,�consecteturzadipiscing elit,zsed do eiusmodztempor incididuntzut labore etzdolore magnazaliqua.rrw)r��	enumerater�)r��text�maxy�maxxr��lines      rr�r�:sR��
�D�����J�D��T�%�4�[�)����
�
�1�a��5�t�D�1�H�}�5�6�7�*rc�J�\rSrSrSrSrSrSrSrSr	Sr
S	rS
rSr
g)
�TextboxTestiKc��[[RS9UlSURRlSURRl[RRUR5Ul	g)N)�spec)rwrw)rrr7)
rr�window�mock_winr��return_valuer�r�r��textboxris rrd�TextboxTest.setUpLsP��!�v�}�}�5��
�+1��
�
���(�.6��
�
���+��~�~�-�-�d�m�m�<��rc��URR5 [RR	UR5nURR
R
5 URRR
S5 URURS5 URURS5 URUR5 URR5 g)zTest textbox initialization.rwFN)
r�
reset_mockrr�r�r��assert_called_once_withr�r�r��stripspacesr��lastcmd)r�tbs  r�	test_init�TextboxTest.test_initRs����
�
� � �"�
�^�^�
#�
#�D�M�M�
2���
�
���6�6�8��
�
���4�4�Q�7��������/��������+����"�*�*�%��
�
� � �"rc�X�URR5 URR[	S55 URR
R
[	S55 URR[	S55 URR
R
[	S55 URR[	S55 URR
R
[	S55 URR5 g)z%Test inserting a printable character.r�r�r�N)rr
r�
do_commandr�r��assert_called_withris r�test_insert�TextboxTest.test_insert]s����
�
� � �"�������C��)��
�
���.�.�s�3�x�8�������C��)��
�
���.�.�s�3�x�8�������C��)��
�
���.�.�s�3�x�8��
�
� � �"rc��URR5 URR[R
R5 URR[R5 URR[R
R5 URR5 g)zTest deleting a character.N)	rr
rrrr��BS�
KEY_BACKSPACE�DELris r�test_delete�TextboxTest.test_deletehsp���
�
� � �"�����������0������� 4� 4�5��������� 0� 0�1��
�
� � �"rc�
�URR5 URR[R
5 URRRSS5 URR5 g)zTest moving the cursor left.rwrN)rr
rrr�KEY_LEFTr�rris r�test_move_left�TextboxTest.test_move_leftq�R���
�
� � �"���������0��
�
���-�-�a��3��
�
� � �"rc�
�URR5 URR[R
5 URRRSS5 URR5 g)zTest moving the cursor right.rwrsN)rr
rrr�	KEY_RIGHTr�rris r�test_move_right�TextboxTest.test_move_rightxsT���
�
� � �"������� 0� 0�1��
�
���-�-�a��3��
�
� � �"rc��URR5 URR[R
5 URRRSS5 URR[R5 URRRSS5 URR5 g)z+Test moving the cursor left and then right.rwrrsN)	rr
rrrrr�rr"ris r�test_move_left_and_right�$TextboxTest.test_move_left_and_rights����
�
� � �"���������0��
�
���-�-�a��3������� 0� 0�1��
�
���-�-�a��3��
�
� � �"rc�
�URR5 URR[R
5 URRRSS5 URR5 g)zTest moving the cursor up.rrwN)rr
rrr�KEY_UPr�rris r�test_move_up�TextboxTest.test_move_up�sR���
�
� � �"�������
�
�.��
�
���-�-�a��3��
�
� � �"rc�
�URR5 URR[R
5 URRRSS5 URR5 g)zTest moving the cursor down.rsrwN)rr
rrr�KEY_DOWNr�rris r�test_move_down�TextboxTest.test_move_down�r r)rrN)r^r_r�r`rdrrrrr#r&r*r.rar%rrrrKs/��=�	#�	#�#�#�#�#�#�#rr�__main__)*r!r�rOr�r@rWr�
unittest.mockr�test.supportrrrrrr	r
�test.support.import_helperrr�curses.panel�ImportErrorrr&r.�environ�getr?r�COLOR_WHITErr!r�r��TestCaser7r�r�r�rr^�mainr%rr�<module>r;s�����	�
�
���#�&�&�&�5�
	���
�x�	 ��
�n��
���	��<���
�z�z�~�~�f����	�����+�+�,�
���	��
���T��.�T�Y�.�=��D�F�	�������)�4�6�x(��"�"�x(�6�F�x(�v#!'��!�!�!'�HU4��!�!�U4�p8�"I#�(�#�#�I#�X�z���M�M�O���{+�	��	�s�E�E)�(E)

Youez - 2016 - github.com/yon3zu
LinuXploit